package org.poseidon.report.service;

import java.util.List;
import org.poseidon.report.domain.BuProduct;
import org.poseidon.report.domain.vo.ProductVO;

/**
 * 业务域Service接口
 * 
 * @author gfc
 * @date 2022-02-22
 */
public interface IBuProductService 
{
    /**
     * 查询业务域
     * 
     * @param id 业务域主键
     * @return 业务域
     */
    public BuProduct selectBuProductById(Long id);

    /**
     * 查询业务域列表
     * 
     * @param buProduct 业务域
     * @return 业务域集合
     */
    public List<BuProduct> selectBuProductList(BuProduct buProduct);

    /**
     * 新增业务域
     * 
     * @param buProduct 业务域
     * @return 结果
     */
    public int insertBuProduct(BuProduct buProduct);

    /**
     * 修改业务域
     * 
     * @param buProduct 业务域
     * @return 结果
     */
    public int updateBuProduct(BuProduct buProduct);

    /**
     * 批量删除业务域
     * 
     * @param ids 需要删除的业务域主键集合
     * @return 结果
     */
    public int deleteBuProductByIds(List<Long> ids);

    /**
     * 删除业务域信息
     * 
     * @param id 业务域主键
     * @return 结果
     */
    public int deleteBuProductById(Long id);

    List<ProductVO> selectAll();
}
